/**
* @file    TypeCast.h
* @author  Li, Xiang
* @date    2020/03
* @brief   INT64 definition and the unsafe convertings that should be marked
* @version
* Copyright (c)
*/

#ifndef TypeCast_h__
#define TypeCast_h__

typedef long long UGINT64;

#define int64_to_int32(number_int64)   (int)(number_int64)
#define int64_to_double(number_int64)  (double)(number_int64)
#define double_to_int64(number_double) (UGINT64)(number_double)

#define DISALLOW_COPY_AND_ASSIGN(ClassName) \
    ClassName(const ClassName&) = delete;\
    void operator=(const ClassName&) = delete;

#endif // TypeCast_h__
